function Get-SubscriptionId {
    [CmdletBinding()]
    param (
        [Parameter(Mandatory = $false)][string]$SubscriptionId,
        [Parameter(Mandatory = $false)][bool]$ConfirmAll = $false
    )

    # Allow user to use existing value or to update it.
    if ((Confirm-SingleValue -Description "Azure Subscription Id" -Value $SubscriptionId -ConfirmAll $ConfirmAll) -eq $true) { return $SubscriptionId }

    # Ask user.
    Write-Host # Newline.
    return Read-Host -Prompt 'Please provide an Azure subcription id'
}